package com.dd.utils;

import com.dd.exception.BusinessException;
import org.springframework.web.multipart.MultipartFile;

import java.util.Arrays;
import java.util.List;

public class FileUtils {
    // 允许上传的图片格式
    private static final List<String> ALLOWED_IMAGE_TYPES = Arrays.asList(
            "image/jpeg",
            "image/png",
            "image/gif"
    );

    // 验证文件类型
    public static void validateImageFile(MultipartFile file) {
        // 检查文件是否为空
        if (file.isEmpty()) {
            throw new BusinessException("上传的文件不能为空");
        }

        // 检查文件类型
        String contentType = file.getContentType();
        if (contentType == null || !ALLOWED_IMAGE_TYPES.contains(contentType.toLowerCase())) {
            throw new BusinessException("只允许上传JPG、PNG、GIF格式的图片");
        }

        // 检查文件大小（这里设置为5MB）
        long size = file.getSize();
        if (size > 5 * 1024 * 1024) {
            throw new BusinessException("图片大小不能超过5MB");
        }
    }
} 